ASP.NET ওয়েব অ্যাপ্লিকেশনগুলোর জন্য নিরাপত্তা এবং ব্যবহারকারীর পরিচিতি নিশ্চিত করার জন্য বিভিন্ন ধরনের Authentication Modes প্রদান করে। এগুলি বিভিন্ন পদ্ধতিতে ব্যবহারকারীর সনাক্তকরণ এবং প্রবেশাধিকার নিয়ন্ত্রণ করে। Authentication Modes হল: Forms Authentication, Windows Authentication, এবং Passport Authentication। এই তিনটি মোডে ব্যবহৃত পদ্ধতিগুলো ভিন্ন ভিন্ন ধরনের অ্যাপ্লিকেশন এবং ইউজার এক্সপিরিয়েন্সের জন্য উপযুক্ত।
Forms Authentication হল একটি জনপ্রিয় এবং বহুল ব্যবহৃত সিস্টেম যা ওয়েব অ্যাপ্লিকেশনে ইউজার লগইন এবং নিরাপত্তা নিশ্চিত করতে ব্যবহৃত হয়। এটি ইউজারের username এবং password গ্রহণ করে, এবং সফল লগইনের পর একটি authentication ticket তৈরি করে যা ক্লায়েন্ট ব্রাউজারে cookies হিসেবে সংরক্ষিত হয়। পরবর্তীতে ইউজার যে কোনো পেজ বা রিসোর্সে অ্যাক্সেস করার চেষ্টা করলে, সিস্টেম সেই টিকিটটি যাচাই করে।
Web.config ফাইলে Forms Authentication কনফিগার করতে হয়:
<configuration>
<system.web>
<authentication mode="Forms">
<forms loginUrl="Login.aspx" timeout="30" />
</authentication>
<authorization>
<deny users="?" /> <!-- Guests can't access the page -->
</authorization>
</system.web>
</configuration>
এখানে:
// Login authentication in C#
protected void btnLogin_Click(object sender, EventArgs e)
{
if (IsValidUser(txtUsername.Text, txtPassword.Text))
{
FormsAuthentication.RedirectFromLoginPage(txtUsername.Text, chkRememberMe.Checked);
}
else
{
lblError.Text = "Invalid credentials.";
}
}
এই উদাহরণে, FormsAuthentication.RedirectFromLoginPage ইউজারকে লগইন পেজে রিডিরেক্ট করবে এবং একটি authentication ticket তৈরি করবে।
Windows Authentication ব্যবহার করে সিস্টেমটি ইউজারের পরিচিতি যাচাই করে Windows user credentials (যেমন Windows username এবং password) এর মাধ্যমে। এটি সাধারণত Intranet অ্যাপ্লিকেশন এবং Active Directory ব্যবহারের জন্য উপযুক্ত, যেখানে ইউজারদের জন্য আলাদা login forms এর প্রয়োজন হয় না। সিস্টেম ইউজারের কম্পিউটার বা ডোমেইনে লগইন করা প্রমাণ হিসেবে ব্যবহার করে।
Web.config ফাইলে Windows Authentication কনফিগার করতে হয়:
<configuration>
<system.web>
<authentication mode="Windows" />
<authorization>
<allow users="Domain\username" />
<deny users="?" />
</authorization>
</system.web>
</configuration>
এখানে:
Passport Authentication (বর্তমানে Microsoft Account Authentication নামে পরিচিত) একটি single sign-on (SSO) সিস্টেম, যা ইউজারকে একাধিক ওয়েবসাইটে একই লগইন তথ্য ব্যবহার করে প্রবেশ করতে দেয়। এর মাধ্যমে ইউজারের একটি Microsoft Passport অ্যাকাউন্ট দিয়ে একাধিক অ্যাপ্লিকেশন এবং সাইটে প্রবেশ করা সম্ভব।
Web.config ফাইলে Passport Authentication কনফিগার করতে হয়:
<configuration>
<system.web>
<authentication mode="Passport" />
<authorization>
<allow users="*" />
</authorization>
</system.web>
</configuration>
এখানে, Passport মোডে অ্যাপ্লিকেশনটি ইউজারের Microsoft Passport ব্যবহার করে ইউজার অথেন্টিকেশন সম্পাদন করবে।
ASP.NET এ Authentication Modes তিনটি প্রধান পদ্ধতি ব্যবহারকারীদের পরিচিতি নিশ্চিত করার জন্য ব্যবহৃত হয়:
প্রত্যেকটি Authentication মোডের উপকারিতা এবং ব্যবহার ক্ষেত্র ভিন্ন, এবং সঠিক মোড নির্বাচন করা একটি অ্যাপ্লিকেশনের নিরাপত্তা এবং ইউজার এক্সপিরিয়েন্সের জন্য গুরুত্বপূর্ণ।
common.read_more